Configuration type for NAFPack
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
real(kind=dp), | public | :: | pivot_tolerance | = | 1.0e-14_dp | ||
real(kind=dp), | public | :: | convergence_tolerance | = | 1.0e-12_dp | ||
real(kind=dp), | public | :: | residual_tolerance | = | 1.0e-10_dp | ||
integer, | public | :: | max_iterations | = | 10000 | ||
integer, | public | :: | block_size | = | 64 | ||
logical, | public | :: | use_openmp | = | .TRUE. | ||
logical, | public | :: | use_blas | = | .TRUE. | ||
logical, | public | :: | preallocate_workspace | = | .TRUE. | ||
integer, | public | :: | workspace_size | = | 1000 | ||
logical, | public | :: | enable_debug | = | .FALSE. | ||
logical, | public | :: | enable_timing | = | .FALSE. | ||
character(len=100), | public | :: | log_file | = | "nafpack.log" | ||
character(len=50), | public | :: | default_direct_method | = | "A_LU" | ||
character(len=50), | public | :: | default_iterative_method | = | "Gauss_Seidel" | ||
character(len=50), | public | :: | default_preconditioner | = | "ILU" |
TYPE :: config_type ! Numerical tolerances REAL(dp) :: pivot_tolerance = 1.0e-14_dp REAL(dp) :: convergence_tolerance = 1.0e-12_dp REAL(dp) :: residual_tolerance = 1.0e-10_dp ! Performance settings INTEGER :: max_iterations = 10000 INTEGER :: block_size = 64 LOGICAL :: use_openmp = .TRUE. LOGICAL :: use_blas = .TRUE. ! Memory management LOGICAL :: preallocate_workspace = .TRUE. INTEGER :: workspace_size = 1000 ! Debugging and logging LOGICAL :: enable_debug = .FALSE. LOGICAL :: enable_timing = .FALSE. CHARACTER(LEN=100) :: log_file = "nafpack.log" ! Method selection CHARACTER(LEN=50) :: default_direct_method = "A_LU" CHARACTER(LEN=50) :: default_iterative_method = "Gauss_Seidel" CHARACTER(LEN=50) :: default_preconditioner = "ILU" END TYPE config_type